module.exports = {
  chainWebpack: config => { // 使用chainWebpack 链式编程设置     
    config.when(process.env.NODE_ENV === 'production', config => { // 判断当前模式 /发布模式
      // entry找到默认的打包入口,调用clear则是删除默认的打包入口 , add添加新的打包入口
      config.entry('app').clear().add('./src/main-prod.js')
      // 使用externals设置排除项, 凡是声明在当前对象中的包,就不会将当前包合并进来,
      // 同时需要在 index.html 文件导入对应的CDN 网络路径
      config.set('externals', {
        vue: 'Vue',
        'vue-router': 'VueRouter',
        axios: 'axios',
        nprogress: 'NProgress',
        'vue-quill-editor': 'VueQuillEditor'
      })
      // 使用插件 修改中间的isProd参数 设置bool值,用来index.html 中判断渲染的值
      config.plugin('html').tap(args => {
        args[0].isProd = true // 添加参数isProd 为自定义的
        return args
      })
    })
    config.when(process.env.NODE_ENV === 'development', config => {//开发模式
      config.entry('app').clear().add('./src/main-dev.js')
      // 使用插件 修改中间的isProd参数 设置bool值,用来index.html 中判断渲染的值
      config.plugin('html').tap(args => {
        args[0].isProd = false //添加参数isProd 为自定义的
        return args
      })
    })
  }
}